EDUCATIONAL
Interactive x86 Assembly & Reverse Engineering Trainer
⚡ Debugger
📚 Reference
🔧 Patch Mode
check_password() — XOR Keyed Auth Check
int check_password(char *input) {   return (input[0] ^ 0x42) == 0x29; }  ← the whole program! single char XOR check
← Click any instruction to learn about it, or use Step ▶ to walk through execution.
Registers & State
EIP 0x0000
ZF
0
CF
0
SF
0
OF
0
Stack Memory ↑ higher addr
$ Ready. Choose input path and press Step ▶ to begin execution.
Step 0 / 0
Input char:

⚡ PATCH THE BINARY

Classic reverse engineering technique: modify one byte of the compiled binary to bypass authentication entirely. The JNE instruction at offset 0x0012 (byte 0x75) checks whether the XOR result matched. Patching it to NOP NOP (0x90 0x90) removes the conditional jump — execution always falls through to the success path. Any password grants access.

Original Binary

Patched Binary